"""
给你 n 个非负整数 a1，a2，...，an，每个数代表坐标中的一个点 (i, ai) 。在坐标内画 n 条垂直线，垂直线 i 的两个端点分别为 (i, ai) 和 (i, 0)。找出其中的两条线，使得它们与 x 轴共同构成的容器可以容纳最多的水。

说明：你不能倾斜容器，且 n 的值至少为 2。

来源：力扣（LeetCode）
链接：https://leetcode-cn.com/problems/container-with-most-water
著作权归领扣网络所有。商业转载请联系官方授权，非商业转载请注明出处。
"""
"""
想不到用双指针，题解写的挺好的。
"""
from typing import List
class Solution:
    def maxArea(self, height: List[int]) -> int:
        n = len(height)
        p1 = 0
        p2 = n-1
        # for i in range(n-1):
        max_value = 0
        while p1 < p2:
            print("p2=",p2)
            max_value = max(max_value, min(height[p1], height[p2]) * (p2-p1))
            if height[p1] < height[p2]:
                p1 += 1 
            else:
                p2 -= 1
        return max_value
            
# print(Solution().maxArea([1,8,6,2,5,4,8,3,7]))
print(Solution().maxArea([1,1]))